This invention relates generally to computer applications and more particularly to transposing bits for computer applications.
Securing data that is stored in a computer""s memory is known. Typically, the data is secured using a form of encryption. One such encryption technique is to transpose the bits of data as they are read into or written from memory. The transposing of bits changes the mapping of bit locations of memory to bit positions in data words. A data word includes at least one byte (i.e., eight bits) that has a particular bit pattern (e.g., b0, b1, b2, b3, b4, b5, b6, b7). When a plurality of data words are stored in a block of memory, the bit locations of memory may be mapped to different data words in accordance with the bit transposition scheme being used.
Currently, to achieve bit transposition in a computer, the computer""s central processing unit executes a software bit transposition algorithm. While this technique enables a computer to implement bit transposition, it requires a fairly sophisticated algorithm, which, when executed, requires a noticeable amount of the central processing unit""s processing resources.
Therefore, a need exists for a method and apparatus for transposing bits without the impact of software bit transposition algorithms.